DigiOffice Gateway Web Services

<back to all web services

ProcessDocumentRequestMessage

Requires Authentication
namespace DigiOffice.Integration.TBIXchangeAzure.Messages

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type Environment() = 
        member val Title:String = null with get,set
        member val Code:String = null with get,set

    [<AllowNullLiteral>]
    type Party() = 
        member val Title:String = null with get,set
        member val Code:String = null with get,set
        member val Version:String = null with get,set
        member val Environment:Environment = null with get,set

    [<AllowNullLiteral>]
    type Header() = 
        member val MessageID:String = null with get,set
        member val Timestamp:DateTime = new DateTime() with get,set
        member val Sender:Party = null with get,set
        member val Recipient:Party = null with get,set
        member val RequestMessageID:Object = null with get,set

    type eventType =
        | Update = 0
        | Create = 1
        | Delete = 2
        | Response = 3

    [<AllowNullLiteral>]
    type Document() = 
        member val ID:Guid = new Guid() with get,set
        member val RootDocumentID:Guid = new Guid() with get,set
        member val RegistrationprofileID:Guid = new Guid() with get,set
        member val Title:String = null with get,set
        member val FullTitle:String = null with get,set
        member val Number:String = null with get,set
        member val Version:String = null with get,set
        member val ExternalNumber:String = null with get,set
        member val ExternalVersion:String = null with get,set
        member val InternalNumber:String = null with get,set
        member val InternalInvoiceNumber:String = null with get,set
        member val PersonID:Int32 = new Int32() with get,set
        member val RelationID:Int32 = new Int32() with get,set
        member val RelationTitle:String = null with get,set
        member val ProjectID:Int32 = new Int32() with get,set
        member val ProjectTitle:String = null with get,set
        member val Extension:String = null with get,set
        member val Date:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val CommentsCount:Int32 = new Int32() with get,set
        member val HasComments:Boolean = new Boolean() with get,set
        member val HasPreview:Boolean = new Boolean() with get,set
        member val ExtraField:String = null with get,set
        member val IsFavorite:Boolean = new Boolean() with get,set
        member val DocumentcategoryText:String = null with get,set
        member val FileSize:Nullable<Int64> = new Nullable<Int64>() with get,set
        member val FileDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val Hash:String = null with get,set
        member val HashType:String = null with get,set
        member val FileUrl:String = null with get,set
        member val StandardDocumentUrl:String = null with get,set
        member val IsCorporateIdentity:Boolean = new Boolean() with get,set
        member val UserTitle:String = null with get,set
        member val IsFrozen:Boolean = new Boolean() with get,set
        member val InternalCompanyID:Int32 = new Int32() with get,set
        member val DirectUrl:String = null with get,set
        member val AllowDigitalSigningOnlyOnPrimaryVersions:Boolean = new Boolean() with get,set
        member val IsPrimaryVersion:Boolean = new Boolean() with get,set
        member val FileExtension:String = null with get,set
        member val CustomProperties:Dictionary<String, Object> = new Dictionary<String, Object>() with get,set

    [<AllowNullLiteral>]
    type DocumentMessage() = 
        member val Header:Header = null with get,set
        member val EventType:eventType = new eventType() with get,set
        member val Document:Document = null with get,set

    [<AllowNullLiteral>]
    type DocumentRequestMessage() = 
        member val Header:Header = null with get,set
        member val RootDocumentID:String = null with get,set
        member val IncludePhysicalFile:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type ProcessDocumentRequestMessage() = 
        member val InstanceId:Guid = new Guid() with get,set
        member val DocumentRequest:DocumentRequestMessage = null with get,set

F# ProcessDocumentRequestMessage DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /xml/reply/ProcessDocumentRequestMessage HTTP/1.1 
Host: kpm_digiofficeapigateway.tbi.nl 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<ProcessDocumentRequestMessage xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/DigiOffice.Integration.TBIXchangeAzure.Messages">
  <DocumentRequest>
    <Header>
      <MessageID>String</MessageID>
      <Recipient>
        <Code>String</Code>
        <Environment>
          <Code>String</Code>
          <Title>String</Title>
        </Environment>
        <Title>String</Title>
        <Version>String</Version>
      </Recipient>
      <RequestMessageID />
      <Sender>
        <Code>String</Code>
        <Environment>
          <Code>String</Code>
          <Title>String</Title>
        </Environment>
        <Title>String</Title>
        <Version>String</Version>
      </Sender>
      <Timestamp>0001-01-01T00:00:00</Timestamp>
    </Header>
    <IncludePhysicalFile>false</IncludePhysicalFile>
    <RootDocumentID>String</RootDocumentID>
  </DocumentRequest>
  <InstanceId>00000000-0000-0000-0000-000000000000</InstanceId>
</ProcessDocumentRequestMessage>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<DocumentMessage xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/DigiOffice.Integration.TBIXchangeAzure.Messages">
  <Document>
    <Code>String</Code>
    <ConstructionBlockReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </ConstructionBlockReference>
    <ConstructionNumberReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </ConstructionNumberReference>
    <CreatedBy>String</CreatedBy>
    <CreationDate>0001-01-01T00:00:00</CreationDate>
    <CustomFields>
      <CustomField>
        <Name>String</Name>
        <Value>String</Value>
      </CustomField>
    </CustomFields>
    <DeletedDate>0001-01-01T00:00:00</DeletedDate>
    <DeletedDateSpecified>false</DeletedDateSpecified>
    <DocumentTypeReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </DocumentTypeReference>
    <File>
      <Content>String</Content>
      <ModifiedDate>0001-01-01T00:00:00</ModifiedDate>
      <Name>String</Name>
      <Size>0</Size>
      <Type>String</Type>
    </File>
    <Floor>0</Floor>
    <FloorSpecified>false</FloorSpecified>
    <GlobalID>String</GlobalID>
    <HousingTypeReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </HousingTypeReference>
    <ModifiedBy>String</ModifiedBy>
    <ModifiedDate>0001-01-01T00:00:00</ModifiedDate>
    <NewestVersion>false</NewestVersion>
    <ProjectReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </ProjectReference>
    <RelationReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </RelationReference>
    <RootDocumentID>String</RootDocumentID>
    <Subject>String</Subject>
    <VersionNumber>String</VersionNumber>
  </Document>
  <EventType>Update</EventType>
  <Header>
    <MessageID>String</MessageID>
    <Recipient>
      <Code>String</Code>
      <Environment>
        <Code>String</Code>
        <Title>String</Title>
      </Environment>
      <Title>String</Title>
      <Version>String</Version>
    </Recipient>
    <RequestMessageID />
    <Sender>
      <Code>String</Code>
      <Environment>
        <Code>String</Code>
        <Title>String</Title>
      </Environment>
      <Title>String</Title>
      <Version>String</Version>
    </Sender>
    <Timestamp>0001-01-01T00:00:00</Timestamp>
  </Header>
</DocumentMessage>